package mysql8学习.高级.第14章_MySQL事务日志;

/**
 * 事务有4种特性:原子性、一致性、隔离性和持久性。那么事务的四种特性到底是基于什么机制实现呢?
 * ● 事务的隔离性由锁机制实现。
 * ● 而事务的原子性、一致性和持久性由事务的redo日志和undo日志来保证。
 *   。REDO LOG 称为重做日志,提供再写入操作,恢复提交事务修改的页操作,用来保证事务的 持久性。
 *   。UNDO LOG 称为回滚日志，回滚行记录到某个特定版本，用来保证事务的 原子性、一致性。
 * 有的DBA或许会认为UNDO是REDO的逆过程，其实不然。
 *  REDO 和 UNDO都可以视为是一种恢复操作，
 * 但是:
 * ● redo log:是存储引擎层(innodb)生成的日志，记录的是"物理级别"上的页修改操作,
 *  比如页号 *xx、偏移量yy 写入了'zz数据。主要为了保证数据的可靠性;
 * ● undo log:是存储引擎层(innodb)生成的日志，记录的是"逻辑操作日志"，
 *  比如对某一行数据进行了INSERT语句操作,那么undo log就记录一条与之相反的DELETE操作。
 *  主要用于事务的回滚(undo log记录的是每个修改操作的逆操作)
 *  和     一致性 非锁定读(undo log回滚行记录到某种特定的版本--MVCC,即多版本并发控制)。
 *
 */
public class A_日志概述 {
}
